#pragma once
#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
#include<stdbool.h>
typedef int QNodeDataType;
typedef struct QuequeListNode
{
	QNodeDataType data;
	struct QuequeListNode* next;
}QNode;
typedef struct Queque
{
	QNode* head;
	QNode* tail;
}Queque;
void QuequeInit(Queque* pq);
void QuequePush(Queque* pq,QNodeDataType x);
void QuequePrint(Queque* pq);
void QuequeDestroy(Queque* pq);
void QuequePop(Queque* pq);
bool QuequeEmpty(Queque* pq);
QNodeDataType QuequeFront(Queque* pq);
QNodeDataType QuequeBack(Queque* pq);
size_t QuequeSize(Queque* pq);